/* File name     :  nfivi_xmit.h
 * Author        :  Wentao Shang
 * 
 * Contents      :
 *    This file is the header file for the 'nfivi_xmit.c' file,
 *    which contains all the system header files and definitions
 *    used in the 'nfivi_xmit.c' file.
 *
 */

#ifndef NFIVI_XMIT_H
#define NFIVI_XMIT_H

#include <linux/module.h>

#include <linux/net.h>
#include <linux/ipv6.h>
#include <linux/tcp.h>
#include <linux/udp.h>
#include <linux/in6.h>
#include <linux/in.h>
#include <linux/if_ether.h>

#include <net/ipv6.h>

#include <linux/netfilter.h>
#include <linux/netfilter_ipv6.h>

#include "nfivi_map.h"

/* checksum update function */
unsigned short checksumadjust( unsigned short chksum, unsigned short oldp, unsigned short newp );

/* port mapping functions called by nf hooks */
extern unsigned int port_map_in( struct sk_buff *skb );
extern unsigned int port_map_out( struct sk_buff *skb );

#endif

